package com.snack.system.domain;

import com.snack.common.core.annotation.Excel;
import com.snack.common.core.utils.StringUtils;
import com.snack.common.core.web.domain.BaseEntity;
import lombok.Data;

/**
 * 资源对象 ts_resource
 * 
 * @author snack
 * @date 2022-09-18
 */
@Data
public class TsResource extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 资源主键id */
    private Long resourceId;

    /** 地址 */
    @Excel(name = "地址")
    private String url;

    /** 编码 */
    @Excel(name = "编码")
    private String pics;

    /** 标签 */
    @Excel(name = "标签")
    private String label;

    /** 类型 */
    @Excel(name = "类型")
    private String type;

    /** 文件格式 */
    @Excel(name = "文件格式")
    private String format;

    /** 大小 */
    @Excel(name = "大小")
    private Long size;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /**
     * 重写equals方法只要resourceId相等，我们就认为对象两个相等
     * @param obj
     * @return
     */
    @Override
    public boolean equals(Object obj) {
        if(obj instanceof TsResource){
            TsResource st=(TsResource) obj;
            if (StringUtils.isNull(resourceId) || StringUtils.isNull(st.resourceId)){
                return false;
            }
            return (resourceId.equals(st.resourceId));
        }else {
            return super.equals(obj);
        }
    }

    @Override
    public int hashCode() {
        return resourceId.hashCode();
    }
}
